Python 学习笔记(二)【文件的简单操作】

在 python 中简单的打开一个文件可以用 open(name, model) 的方式
name 文件路径。
model 打开的方式。

model 参数如下:

1
2
3
4
5
6
7
8
9
file = open("散文.txt")
for line in file:
print line,

print "\n\n第二次读取:"
for line in file:
print line,

print "\n\n第二次读取结束。\n\n"

第二次读取没有内容,是因为第二次读取是从第一次读取的结束开始,那么自然就没有数据。
相当于文件的指针指向了文件的末尾,再从某未开始读取,自然就没有数据。

1
2
3
4
file.seek(0)
for line in file:
print line,
file.close() # 关闭文件

加上 seek() 这个方法,这时我们就能读取到数据了。
这个方法将指针移到了文件的开头。

1
2
3
file2 = open("散文.txt", "a")
file2.write("这是新添加的内容。")
file2.close()

写完必须关闭,这样才能保存到文件

1
2
3
import os
file_state = os.stat("散文.txt")
print file_state

输出:

1
posix.stat_result(st_mode=33188, st_ino=3496826, st_dev=16777220, st_nlink=1, st_uid=501, st_gid=20, st_size=566, st_atime=1510210604, st_mtime=1510207603, st_ctime=1510207603)

我们将信息格式化一下:

1
2
import time
print time.localtime(file_state.st_ctime)

输出:

1
time.struct_time(tm_year=2017, tm_mon=11, tm_mday=9, tm_hour=14, tm_min=6, tm_sec=43, tm_wday=3, tm_yday=313, tm_isdst=0)

读取文件有很多方法,系统提供了 read()readline()readlines 。这些方法都是将内容读入至内存中。在读取大文件的时候最好用下面的方法。

1
2
3
4
fpb = open("散文.txt", "r")
for item in fpb:
print item,
fpb.close()